From 55d29d08a192362d1717f4b27156186953c9c338 Mon Sep 17 00:00:00 2001 From: Emmanuele Bassi Date: Wed, 15 Jul 2020 19:08:37 +0100 Subject: [PATCH] a11y: Resync with the ARIA spec Drop roles and properties that were deprecated in WAI-ARIA 1.1, and add new roles and properties defined in WAI-ARIA 1.2 and later. We also split the relationship properties into their own enumeration, so we can keep the GtkAccessibleProperty type more compact. --- gtk/gtkaccessiblepropertyset.c | 49 ++++++------- gtk/gtkaccessiblestateset.c | 1 - gtk/gtkaccessiblevalue.c | 40 ++++------- gtk/gtkaccessiblevalueprivate.h | 40 +---------- gtk/gtkaccessiblevaluestatic.c | 62 ++++++++++++----- gtk/gtkatcontextprivate.h | 43 +++++------- gtk/gtkenums.h | 120 +++++++++++++++++++++++++------- 7 files changed, 195 insertions(+), 160 deletions(-) diff --git a/gtk/gtkaccessiblepropertyset.c b/gtk/gtkaccessiblepropertyset.c index 9a703fe6a9..a50ff8ae47 100644 --- a/gtk/gtkaccessiblepropertyset.c +++ b/gtk/gtkaccessiblepropertyset.c @@ -91,7 +91,7 @@ gtk_accessible_property_set_add (GtkAccessiblePropertySet *self, GtkAccessibleProperty property, GtkAccessibleValue *value) { - g_return_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT && + g_return_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE && property <= GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT); if (gtk_accessible_property_set_contains (self, property)) @@ -106,7 +106,7 @@ void gtk_accessible_property_set_remove (GtkAccessiblePropertySet *self, GtkAccessibleProperty property) { - g_return_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT && + g_return_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE && property <= GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT); if (gtk_accessible_property_set_contains (self, property)) @@ -120,7 +120,7 @@ gboolean gtk_accessible_property_set_contains (GtkAccessiblePropertySet *self, GtkAccessibleProperty property) { - g_return_val_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT && + g_return_val_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE && property <= GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT, FALSE); @@ -131,7 +131,7 @@ GtkAccessibleValue * gtk_accessible_property_set_get_value (GtkAccessiblePropertySet *self, GtkAccessibleProperty property) { - g_return_val_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT && + g_return_val_if_fail (property >= GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE && property <= GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT, NULL); @@ -139,28 +139,25 @@ gtk_accessible_property_set_get_value (GtkAccessiblePropertySet *self, } static const char *property_names[] = { - [GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT] = "active-descendant", - [GTK_ACCESSIBLE_PROPERTY_CONTROLS] = "controls", - [GTK_ACCESSIBLE_PROPERTY_DESCRIBED_BY] = "described-by", - [GTK_ACCESSIBLE_PROPERTY_FLOW_TO] = "flow-to", - [GTK_ACCESSIBLE_PROPERTY_HAS_POPUP] = "has-popup", - [GTK_ACCESSIBLE_PROPERTY_LABEL] = "label", - [GTK_ACCESSIBLE_PROPERTY_LABELLED_BY] = "labelled-by", - [GTK_ACCESSIBLE_PROPERTY_LEVEL] = "level", - [GTK_ACCESSIBLE_PROPERTY_MULTI_LINE] = "multiline", - [GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE] = "multi-selectable", - [GTK_ACCESSIBLE_PROPERTY_ORIENTATION] = "orientation", - [GTK_ACCESSIBLE_PROPERTY_OWNS] = "owns", - [GTK_ACCESSIBLE_PROPERTY_POS_IN_SET] = "pos-in-set", - [GTK_ACCESSIBLE_PROPERTY_READ_ONLY] = "read-only", - [GTK_ACCESSIBLE_PROPERTY_RELEVANT] = "relevant", - [GTK_ACCESSIBLE_PROPERTY_REQUIRED] = "required", - [GTK_ACCESSIBLE_PROPERTY_SET_SIZE] = "set-size", - [GTK_ACCESSIBLE_PROPERTY_SORT] = "sort", - [GTK_ACCESSIBLE_PROPERTY_VALUE_MAX] = "value-max", - [GTK_ACCESSIBLE_PROPERTY_VALUE_MIN] = "value-min", - [GTK_ACCESSIBLE_PROPERTY_VALUE_NOW] = "value-now", - [GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT] = "value-text", + [GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE] = "autocomplete", + [GTK_ACCESSIBLE_PROPERTY_DESCRIPTION] = "description", + [GTK_ACCESSIBLE_PROPERTY_HAS_POPUP] = "haspopup", + [GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS] = "keyshortcuts", + [GTK_ACCESSIBLE_PROPERTY_LABEL] = "label", + [GTK_ACCESSIBLE_PROPERTY_LEVEL] = "level", + [GTK_ACCESSIBLE_PROPERTY_MODAL] = "modal", + [GTK_ACCESSIBLE_PROPERTY_MULTI_LINE] = "multiline", + [GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE] = "multiselectable", + [GTK_ACCESSIBLE_PROPERTY_ORIENTATION] = "orientation", + [GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER] = "placeholder", + [GTK_ACCESSIBLE_PROPERTY_READ_ONLY] = "readonly", + [GTK_ACCESSIBLE_PROPERTY_REQUIRED] = "required", + [GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION] = "roledescription", + [GTK_ACCESSIBLE_PROPERTY_SORT] = "sort", + [GTK_ACCESSIBLE_PROPERTY_VALUE_MAX] = "valuemax", + [GTK_ACCESSIBLE_PROPERTY_VALUE_MIN] = "valuemin", + [GTK_ACCESSIBLE_PROPERTY_VALUE_NOW] = "valuenow", + [GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT] = "valuetext", }; /*< private > diff --git a/gtk/gtkaccessiblestateset.c b/gtk/gtkaccessiblestateset.c index b494adf5cf..799625864a 100644 --- a/gtk/gtkaccessiblestateset.c +++ b/gtk/gtkaccessiblestateset.c @@ -143,7 +143,6 @@ static const char *state_names[] = { [GTK_ACCESSIBLE_STATE_CHECKED] = "checked", [GTK_ACCESSIBLE_STATE_DISABLED] = "disabled", [GTK_ACCESSIBLE_STATE_EXPANDED] = "expanded", - [GTK_ACCESSIBLE_STATE_GRABBED] = "grabbed", [GTK_ACCESSIBLE_STATE_HIDDEN] = "hidden", [GTK_ACCESSIBLE_STATE_INVALID] = "invalid", [GTK_ACCESSIBLE_STATE_PRESSED] = "pressed", diff --git a/gtk/gtkaccessiblevalue.c b/gtk/gtkaccessiblevalue.c index db2509ebd6..56f9b88642 100644 --- a/gtk/gtkaccessiblevalue.c +++ b/gtk/gtkaccessiblevalue.c @@ -485,32 +485,28 @@ static const GtkAccessibleCollect collect_states[] = { { GTK_ACCESSIBLE_STATE_CHECKED, GTK_ACCESSIBLE_COLLECT_ENUM, "checked", (GCallback) gtk_checked_accessible_value_new }, { GTK_ACCESSIBLE_STATE_DISABLED, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "disabled", (GCallback) gtk_boolean_accessible_value_new }, { GTK_ACCESSIBLE_STATE_EXPANDED, GTK_ACCESSIBLE_COLLECT_TRISTATE, "expanded", (GCallback) gtk_expanded_accessible_value_new }, - { GTK_ACCESSIBLE_STATE_GRABBED, GTK_ACCESSIBLE_COLLECT_TRISTATE, "grabbed", (GCallback) gtk_grabbed_accessible_value_new }, { GTK_ACCESSIBLE_STATE_HIDDEN, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "hidden", (GCallback) gtk_boolean_accessible_value_new }, { GTK_ACCESSIBLE_STATE_INVALID, GTK_ACCESSIBLE_COLLECT_ENUM, "invalid", (GCallback) gtk_invalid_accessible_value_new }, { GTK_ACCESSIBLE_STATE_PRESSED, GTK_ACCESSIBLE_COLLECT_ENUM, "pressed", (GCallback) gtk_pressed_accessible_value_new }, { GTK_ACCESSIBLE_STATE_SELECTED, GTK_ACCESSIBLE_COLLECT_TRISTATE, "selected", (GCallback) gtk_selected_accessible_value_new }, }; +/* § 6.6.1 Widget attributes */ static const GtkAccessibleCollect collect_props[] = { - { GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT, GTK_ACCESSIBLE_COLLECT_REF, "activedescendant", (GCallback) gtk_reference_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE, GTK_ACCESSIBLE_COLLECT_ENUM, "autocomplete", (GCallback) gtk_autocomplete_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_CONTROLS, GTK_ACCESSIBLE_COLLECT_REF, "controls", (GCallback) gtk_reference_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_DESCRIBED_BY, GTK_ACCESSIBLE_COLLECT_REF, "describedby", (GCallback) gtk_reference_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_FLOW_TO, GTK_ACCESSIBLE_COLLECT_REF, "flowto", (GCallback) gtk_reference_accessible_value_new }, + { GTK_ACCESSIBLE_PROPERTY_DESCRIPTION, GTK_ACCESSIBLE_COLLECT_STRING, "description", (GCallback) gtk_string_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_HAS_POPUP, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "haspopup", (GCallback) gtk_boolean_accessible_value_new }, + { GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS, GTK_ACCESSIBLE_COLLECT_STRING, "keyshortcuts", (GCallback) gtk_string_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_LABEL, GTK_ACCESSIBLE_COLLECT_STRING, "label", (GCallback) gtk_string_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_LABELLED_BY, GTK_ACCESSIBLE_COLLECT_REF , "labelledby", (GCallback) gtk_reference_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_LEVEL, GTK_ACCESSIBLE_COLLECT_INT, "level", (GCallback) gtk_int_accessible_value_new }, + { GTK_ACCESSIBLE_PROPERTY_MODAL, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "modal", (GCallback) gtk_boolean_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_MULTI_LINE, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "multiline", (GCallback) gtk_boolean_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "multiselectable", (GCallback) gtk_boolean_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_ORIENTATION, GTK_ACCESSIBLE_COLLECT_ENUM, "orientation", (GCallback) gtk_orientation_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_OWNS, GTK_ACCESSIBLE_COLLECT_REF, "owns", (GCallback) gtk_reference_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_POS_IN_SET, GTK_ACCESSIBLE_COLLECT_INT, "posinset", (GCallback) gtk_int_accessible_value_new }, + { GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER, GTK_ACCESSIBLE_COLLECT_STRING, "placeholder", (GCallback) gtk_string_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_READ_ONLY, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "readonly", (GCallback) gtk_boolean_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_RELEVANT, GTK_ACCESSIBLE_COLLECT_STRING, "relevant", (GCallback) gtk_string_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_REQUIRED, GTK_ACCESSIBLE_COLLECT_BOOLEAN, "required", (GCallback) gtk_boolean_accessible_value_new }, - { GTK_ACCESSIBLE_PROPERTY_SET_SIZE, GTK_ACCESSIBLE_COLLECT_INT, "setsize", (GCallback) gtk_int_accessible_value_new }, + { GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION, GTK_ACCESSIBLE_COLLECT_STRING, "roledescription", (GCallback) gtk_string_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_SORT, GTK_ACCESSIBLE_COLLECT_ENUM, "sort", (GCallback) gtk_sort_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, GTK_ACCESSIBLE_COLLECT_NUMBER, "valuemax", (GCallback) gtk_number_accessible_value_new }, { GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, GTK_ACCESSIBLE_COLLECT_NUMBER, "valuemin", (GCallback) gtk_number_accessible_value_new }, @@ -551,10 +547,7 @@ gtk_accessible_value_get_default_for_state (GtkAccessibleState state) return gtk_checked_accessible_value_new (GTK_ACCESSIBLE_CHECKED_UNDEFINED); case GTK_ACCESSIBLE_STATE_EXPANDED: - return gtk_expanded_accessible_value_new (GTK_ACCESSIBLE_STATE_UNDEFINED); - - case GTK_ACCESSIBLE_STATE_GRABBED: - return gtk_grabbed_accessible_value_new (GTK_ACCESSIBLE_STATE_UNDEFINED); + return gtk_expanded_accessible_value_new (GTK_ACCESSIBLE_VALUE_UNDEFINED); case GTK_ACCESSIBLE_STATE_INVALID: return gtk_invalid_accessible_value_new (GTK_ACCESSIBLE_INVALID_FALSE); @@ -563,7 +556,7 @@ gtk_accessible_value_get_default_for_state (GtkAccessibleState state) return gtk_pressed_accessible_value_new (GTK_ACCESSIBLE_PRESSED_UNDEFINED); case GTK_ACCESSIBLE_STATE_SELECTED: - return gtk_selected_accessible_value_new (GTK_ACCESSIBLE_STATE_UNDEFINED); + return gtk_selected_accessible_value_new (GTK_ACCESSIBLE_VALUE_UNDEFINED); default: g_critical ("Unknown value for accessible state “%s”", cstate->name); @@ -801,18 +794,9 @@ gtk_accessible_value_get_default_for_property (GtkAccessibleProperty property) switch (cstate->value) { - /* Reference properties */ - case GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT: - case GTK_ACCESSIBLE_PROPERTY_CONTROLS: - case GTK_ACCESSIBLE_PROPERTY_DESCRIBED_BY: - case GTK_ACCESSIBLE_PROPERTY_FLOW_TO: - case GTK_ACCESSIBLE_PROPERTY_LABELLED_BY: - case GTK_ACCESSIBLE_PROPERTY_OWNS: - case GTK_ACCESSIBLE_PROPERTY_RELEVANT: - return NULL; - /* Boolean properties */ case GTK_ACCESSIBLE_PROPERTY_HAS_POPUP: + case GTK_ACCESSIBLE_PROPERTY_MODAL: case GTK_ACCESSIBLE_PROPERTY_MULTI_LINE: case GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE: case GTK_ACCESSIBLE_PROPERTY_READ_ONLY: @@ -821,8 +805,6 @@ gtk_accessible_value_get_default_for_property (GtkAccessibleProperty property) /* Integer properties */ case GTK_ACCESSIBLE_PROPERTY_LEVEL: - case GTK_ACCESSIBLE_PROPERTY_POS_IN_SET: - case GTK_ACCESSIBLE_PROPERTY_SET_SIZE: return gtk_int_accessible_value_new (0); /* Number properties */ @@ -832,7 +814,11 @@ gtk_accessible_value_get_default_for_property (GtkAccessibleProperty property) return gtk_number_accessible_value_new (0); /* String properties */ + case GTK_ACCESSIBLE_PROPERTY_DESCRIPTION: + case GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS: case GTK_ACCESSIBLE_PROPERTY_LABEL: + case GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER: + case GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION: case GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT: return gtk_string_accessible_value_new (""); diff --git a/gtk/gtkaccessiblevalueprivate.h b/gtk/gtkaccessiblevalueprivate.h index 3c007aedbe..48744954fc 100644 --- a/gtk/gtkaccessiblevalueprivate.h +++ b/gtk/gtkaccessiblevalueprivate.h @@ -85,45 +85,9 @@ GtkAccessibleValue * gtk_accessible_value_collect_for_property (GtkAcce GtkAccessibleValue * gtk_accessible_value_collect_for_property_value (GtkAccessibleProperty property, const GValue *value); - -#define GTK_ACCESSIBLE_STATE_UNDEFINED (-1) - -typedef enum { /*< prefix=GTK_ACCESSIBLE_CHECKED >*/ - GTK_ACCESSIBLE_CHECKED_FALSE = 0, - GTK_ACCESSIBLE_CHECKED_TRUE = 1, - GTK_ACCESSIBLE_CHECKED_UNDEFINED = -1, - GTK_ACCESSIBLE_CHECKED_MIXED = -2 -} GtkAccessibleCheckedState; - -typedef enum { /*< prefix=GTK_ACCESSIBLE_PRESSED >*/ - GTK_ACCESSIBLE_PRESSED_FALSE = 0, - GTK_ACCESSIBLE_PRESSED_TRUE = 1, - GTK_ACCESSIBLE_PRESSED_UNDEFINED = -1, - GTK_ACCESSIBLE_PRESSED_MIXED = -2 -} GtkAccessiblePressedState; - -typedef enum { /*< prefix=GTK_ACCESSIBLE_INVALID >*/ - GTK_ACCESSIBLE_INVALID_FALSE, - GTK_ACCESSIBLE_INVALID_TRUE, - GTK_ACCESSIBLE_INVALID_GRAMMAR, - GTK_ACCESSIBLE_INVALID_SPELLING, -} GtkAccessibleInvalidState; - -typedef enum { /*< prefix=GTK_ACCESSIBLE_AUTOCOMPLETE >*/ - GTK_ACCESSIBLE_AUTOCOMPLETE_NONE, - GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE, - GTK_ACCESSIBLE_AUTOCOMPLETE_LIST, - GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH -} GtkAccessibleAutocomplete; - -typedef enum { /*< prefix=GTK_ACCESSIBLE_SORT >*/ - GTK_ACCESSIBLE_SORT_NONE, - GTK_ACCESSIBLE_SORT_ASCENDING, - GTK_ACCESSIBLE_SORT_DESCENDING, - GTK_ACCESSIBLE_SORT_OTHER -} GtkAccessibleSort; - /* Basic values */ +GtkAccessibleValue * gtk_undefined_accessible_value_new (void); + GtkAccessibleValue * gtk_boolean_accessible_value_new (gboolean value); gboolean gtk_boolean_accessible_value_get (const GtkAccessibleValue *value); diff --git a/gtk/gtkaccessiblevaluestatic.c b/gtk/gtkaccessiblevaluestatic.c index 9fa9982248..5704212448 100644 --- a/gtk/gtkaccessiblevaluestatic.c +++ b/gtk/gtkaccessiblevaluestatic.c @@ -22,6 +22,33 @@ #include "gtkaccessiblevalueprivate.h" +/* {{{ Undefined value */ + +static void +gtk_undefined_accessible_value_print (const GtkAccessibleValue *value, + GString *buffer) +{ + g_string_append (buffer, "undefined"); +} + +static const GtkAccessibleValueClass GTK_UNDEFINED_ACCESSIBLE_VALUE = { + .type_name = "GtkUndefinedAccessibleValue", + .instance_size = sizeof (GtkAccessibleValue), + .print = gtk_undefined_accessible_value_print, +}; + +static GtkAccessibleValue undefined_value = { + >K_UNDEFINED_ACCESSIBLE_VALUE, 1 +}; + +GtkAccessibleValue * +gtk_undefined_accessible_value_new (void) +{ + return gtk_accessible_value_ref (&undefined_value); +} + +/* }}} */ + /* {{{ Boolean values */ typedef struct @@ -136,9 +163,9 @@ static const GtkAccessibleValueClass GTK_EXPANDED_ACCESSIBLE_VALUE = { }; static GtkTristateAccessibleValue expanded_values[] = { - { { >K_EXPANDED_ACCESSIBLE_VALUE, 1 }, -1 }, - { { >K_EXPANDED_ACCESSIBLE_VALUE, 1 }, 0 }, - { { >K_EXPANDED_ACCESSIBLE_VALUE, 1 }, 1 }, + { { >K_EXPANDED_ACCESSIBLE_VALUE, 1 }, GTK_ACCESSIBLE_VALUE_UNDEFINED }, + { { >K_EXPANDED_ACCESSIBLE_VALUE, 1 }, 0 }, + { { >K_EXPANDED_ACCESSIBLE_VALUE, 1 }, 1 }, }; GtkAccessibleValue * @@ -161,9 +188,9 @@ gtk_expanded_accessible_value_get (const GtkAccessibleValue *value) { GtkTristateAccessibleValue *self = (GtkTristateAccessibleValue *) value; - g_return_val_if_fail (value != NULL, GTK_ACCESSIBLE_STATE_UNDEFINED); + g_return_val_if_fail (value != NULL, GTK_ACCESSIBLE_VALUE_UNDEFINED); g_return_val_if_fail (value->value_class == >K_EXPANDED_ACCESSIBLE_VALUE, - GTK_ACCESSIBLE_STATE_UNDEFINED); + GTK_ACCESSIBLE_VALUE_UNDEFINED); return self->value; } @@ -176,9 +203,9 @@ static const GtkAccessibleValueClass GTK_GRABBED_ACCESSIBLE_VALUE = { }; static GtkTristateAccessibleValue grabbed_values[] = { - { { >K_GRABBED_ACCESSIBLE_VALUE, 1 }, -1 }, - { { >K_GRABBED_ACCESSIBLE_VALUE, 1 }, 0 }, - { { >K_GRABBED_ACCESSIBLE_VALUE, 1 }, 1 }, + { { >K_GRABBED_ACCESSIBLE_VALUE, 1 }, GTK_ACCESSIBLE_VALUE_UNDEFINED }, + { { >K_GRABBED_ACCESSIBLE_VALUE, 1 }, 0 }, + { { >K_GRABBED_ACCESSIBLE_VALUE, 1 }, 1 }, }; GtkAccessibleValue * @@ -201,9 +228,9 @@ gtk_grabbed_accessible_value_get (const GtkAccessibleValue *value) { GtkTristateAccessibleValue *self = (GtkTristateAccessibleValue *) value; - g_return_val_if_fail (value != NULL, GTK_ACCESSIBLE_STATE_UNDEFINED); + g_return_val_if_fail (value != NULL, GTK_ACCESSIBLE_VALUE_UNDEFINED); g_return_val_if_fail (value->value_class == >K_GRABBED_ACCESSIBLE_VALUE, - GTK_ACCESSIBLE_STATE_UNDEFINED); + GTK_ACCESSIBLE_VALUE_UNDEFINED); return self->value; } @@ -216,9 +243,9 @@ static const GtkAccessibleValueClass GTK_SELECTED_ACCESSIBLE_VALUE = { }; static GtkTristateAccessibleValue selected_values[] = { - { { >K_SELECTED_ACCESSIBLE_VALUE, 1 }, -1 }, - { { >K_SELECTED_ACCESSIBLE_VALUE, 1 }, 0 }, - { { >K_SELECTED_ACCESSIBLE_VALUE, 1 }, 1 }, + { { >K_SELECTED_ACCESSIBLE_VALUE, 1 }, GTK_ACCESSIBLE_VALUE_UNDEFINED }, + { { >K_SELECTED_ACCESSIBLE_VALUE, 1 }, 0 }, + { { >K_SELECTED_ACCESSIBLE_VALUE, 1 }, 1 }, }; GtkAccessibleValue * @@ -241,9 +268,9 @@ gtk_selected_accessible_value_get (const GtkAccessibleValue *value) { GtkTristateAccessibleValue *self = (GtkTristateAccessibleValue *) value; - g_return_val_if_fail (value != NULL, GTK_ACCESSIBLE_STATE_UNDEFINED); + g_return_val_if_fail (value != NULL, GTK_ACCESSIBLE_VALUE_UNDEFINED); g_return_val_if_fail (value->value_class == >K_SELECTED_ACCESSIBLE_VALUE, - GTK_ACCESSIBLE_STATE_UNDEFINED); + GTK_ACCESSIBLE_VALUE_UNDEFINED); return self->value; } @@ -472,8 +499,9 @@ static const GtkAccessibleValueClass GTK_ORIENTATION_ACCESSIBLE_VALUE = { }; static GtkEnumAccessibleValue orientation_values[] = { - { { >K_ORIENTATION_ACCESSIBLE_VALUE, 1 }, GTK_ORIENTATION_HORIZONTAL, "horizontal" }, - { { >K_ORIENTATION_ACCESSIBLE_VALUE, 1 }, GTK_ORIENTATION_VERTICAL, "vertical" }, + { { >K_ORIENTATION_ACCESSIBLE_VALUE, 1 }, GTK_ORIENTATION_HORIZONTAL, "horizontal" }, + { { >K_ORIENTATION_ACCESSIBLE_VALUE, 1 }, GTK_ORIENTATION_VERTICAL, "vertical" }, + { { >K_ORIENTATION_ACCESSIBLE_VALUE, 1 }, GTK_ACCESSIBLE_VALUE_UNDEFINED, "undefined" }, }; GtkAccessibleValue * diff --git a/gtk/gtkatcontextprivate.h b/gtk/gtkatcontextprivate.h index 4df4d26bb5..ec152a2060 100644 --- a/gtk/gtkatcontextprivate.h +++ b/gtk/gtkatcontextprivate.h @@ -32,7 +32,6 @@ typedef enum { GTK_ACCESSIBLE_STATE_CHANGE_CHECKED = 1 << GTK_ACCESSIBLE_STATE_CHECKED, GTK_ACCESSIBLE_STATE_CHANGE_DISABLED = 1 << GTK_ACCESSIBLE_STATE_DISABLED, GTK_ACCESSIBLE_STATE_CHANGE_EXPANDED = 1 << GTK_ACCESSIBLE_STATE_EXPANDED, - GTK_ACCESSIBLE_STATE_CHANGE_GRABBED = 1 << GTK_ACCESSIBLE_STATE_GRABBED, GTK_ACCESSIBLE_STATE_CHANGE_HIDDEN = 1 << GTK_ACCESSIBLE_STATE_HIDDEN, GTK_ACCESSIBLE_STATE_CHANGE_INVALID = 1 << GTK_ACCESSIBLE_STATE_INVALID, GTK_ACCESSIBLE_STATE_CHANGE_PRESSED = 1 << GTK_ACCESSIBLE_STATE_PRESSED, @@ -40,29 +39,25 @@ typedef enum { } GtkAccessibleStateChange; typedef enum { - GTK_ACCESSIBLE_PROPERTY_CHANGE_ACTIVE_DESCENDANT = 1 << GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT, - GTK_ACCESSIBLE_PROPERTY_CHANGE_AUTOCOMPLETE = 1 << GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE, - GTK_ACCESSIBLE_PROPERTY_CHANGE_CONTROLS = 1 << GTK_ACCESSIBLE_PROPERTY_CONTROLS, - GTK_ACCESSIBLE_PROPERTY_CHANGE_DESCRIBED_BY = 1 << GTK_ACCESSIBLE_PROPERTY_DESCRIBED_BY, - GTK_ACCESSIBLE_PROPERTY_CHANGE_FLOW_TO = 1 << GTK_ACCESSIBLE_PROPERTY_FLOW_TO, - GTK_ACCESSIBLE_PROPERTY_CHANGE_HAS_POPUP = 1 << GTK_ACCESSIBLE_PROPERTY_HAS_POPUP, - GTK_ACCESSIBLE_PROPERTY_CHANGE_LABEL = 1 << GTK_ACCESSIBLE_PROPERTY_LABEL, - GTK_ACCESSIBLE_PROPERTY_CHANGE_LABELLED_BY = 1 << GTK_ACCESSIBLE_PROPERTY_LABELLED_BY, - GTK_ACCESSIBLE_PROPERTY_CHANGE_LEVEL = 1 << GTK_ACCESSIBLE_PROPERTY_LEVEL, - GTK_ACCESSIBLE_PROPERTY_CHANGE_MULTI_LINE = 1 << GTK_ACCESSIBLE_PROPERTY_MULTI_LINE, - GTK_ACCESSIBLE_PROPERTY_CHANGE_MULTI_SELECTABLE = 1 << GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE, - GTK_ACCESSIBLE_PROPERTY_CHANGE_ORIENTATION = 1 << GTK_ACCESSIBLE_PROPERTY_ORIENTATION, - GTK_ACCESSIBLE_PROPERTY_CHANGE_OWNS = 1 << GTK_ACCESSIBLE_PROPERTY_OWNS, - GTK_ACCESSIBLE_PROPERTY_CHANGE_POS_IN_SET = 1 << GTK_ACCESSIBLE_PROPERTY_POS_IN_SET, - GTK_ACCESSIBLE_PROPERTY_CHANGE_READ_ONLY = 1 << GTK_ACCESSIBLE_PROPERTY_READ_ONLY, - GTK_ACCESSIBLE_PROPERTY_CHANGE_RELEVANT = 1 << GTK_ACCESSIBLE_PROPERTY_RELEVANT, - GTK_ACCESSIBLE_PROPERTY_CHANGE_REQUIRED = 1 << GTK_ACCESSIBLE_PROPERTY_REQUIRED, - GTK_ACCESSIBLE_PROPERTY_CHANGE_SET_SIZE = 1 << GTK_ACCESSIBLE_PROPERTY_SET_SIZE, - GTK_ACCESSIBLE_PROPERTY_CHANGE_SORT = 1 << GTK_ACCESSIBLE_PROPERTY_SORT, - GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_MAX = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, - GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_MIN = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, - GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_NOW = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, - GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_TEXT = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT + GTK_ACCESSIBLE_PROPERTY_CHANGE_AUTOCOMPLETE = 1 << GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE, + GTK_ACCESSIBLE_PROPERTY_CHANGE_DESCRIPTION = 1 << GTK_ACCESSIBLE_PROPERTY_DESCRIPTION, + GTK_ACCESSIBLE_PROPERTY_CHANGE_HAS_POPUP = 1 << GTK_ACCESSIBLE_PROPERTY_HAS_POPUP, + GTK_ACCESSIBLE_PROPERTY_CHANGE_KEY_SHORTCUTS = 1 << GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS, + GTK_ACCESSIBLE_PROPERTY_CHANGE_LABEL = 1 << GTK_ACCESSIBLE_PROPERTY_LABEL, + GTK_ACCESSIBLE_PROPERTY_CHANGE_LEVEL = 1 << GTK_ACCESSIBLE_PROPERTY_LEVEL, + GTK_ACCESSIBLE_PROPERTY_CHANGE_MODAL = 1 << GTK_ACCESSIBLE_PROPERTY_MODAL, + GTK_ACCESSIBLE_PROPERTY_CHANGE_MULTI_LINE = 1 << GTK_ACCESSIBLE_PROPERTY_MULTI_LINE, + GTK_ACCESSIBLE_PROPERTY_CHANGE_MULTI_SELECTABLE = 1 << GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE, + GTK_ACCESSIBLE_PROPERTY_CHANGE_ORIENTATION = 1 << GTK_ACCESSIBLE_PROPERTY_ORIENTATION, + GTK_ACCESSIBLE_PROPERTY_CHANGE_PLACEHOLDER = 1 << GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER, + GTK_ACCESSIBLE_PROPERTY_CHANGE_READ_ONLY = 1 << GTK_ACCESSIBLE_PROPERTY_READ_ONLY, + GTK_ACCESSIBLE_PROPERTY_CHANGE_REQUIRED = 1 << GTK_ACCESSIBLE_PROPERTY_REQUIRED, + GTK_ACCESSIBLE_PROPERTY_CHANGE_ROLE_DESCRIPTION = 1 << GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION, + GTK_ACCESSIBLE_PROPERTY_CHANGE_SORT = 1 << GTK_ACCESSIBLE_PROPERTY_SORT, + GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_MAX = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, + GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_MIN = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, + GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_NOW = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_NOW, + GTK_ACCESSIBLE_PROPERTY_CHANGE_VALUE_TEXT = 1 << GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT } GtkAccessiblePropertyChange; struct _GtkATContext diff --git a/gtk/gtkenums.h b/gtk/gtkenums.h index 30bfc568c5..498db54204 100644 --- a/gtk/gtkenums.h +++ b/gtk/gtkenums.h @@ -1152,16 +1152,23 @@ typedef enum { /** * GtkAccessibleRole: - * @GTK_ACCESSIBLE_ROLE_ALERT: FIXME - * @GTK_ACCESSIBLE_ROLE_ALERT_DIALOG: FIXME + * @GTK_ACCESSIBLE_ROLE_ALERT: An element with important, and usually + * time-sensitive, information + * @GTK_ACCESSIBLE_ROLE_ALERT_DIALOG: A type of dialog that contains an + * alert message * @GTK_ACCESSIBLE_ROLE_APPLICATION: FIXME * @GTK_ACCESSIBLE_ROLE_ARTICLE: FIXME * @GTK_ACCESSIBLE_ROLE_BANNER: FIXME - * @GTK_ACCESSIBLE_ROLE_BUTTON: FIXME - * @GTK_ACCESSIBLE_ROLE_CHECKBOX: FIXME + * @GTK_ACCESSIBLE_ROLE_BUTTON: An input element that allows for + * user-triggered actions when clicked or pressed + * @GTK_ACCESSIBLE_ROLE_CHECKBOX: A checkable input element that has + * three possible values: `true`, `false`, or `mixed` * @GTK_ACCESSIBLE_ROLE_COLUMN_HEADER: FIXME - * @GTK_ACCESSIBLE_ROLE_COMBOBOX: FIXME - * @GTK_ACCESSIBLE_ROLE_COMMAND: FIXME + * @GTK_ACCESSIBLE_ROLE_COMBOBOX: An input that controls another element, + * such as a list or a grid, that can dynamically pop up to help the user + * set the value of the input + * @GTK_ACCESSIBLE_ROLE_COMMAND: An abstract widget that performs an + * action, but does not receive input * @GTK_ACCESSIBLE_ROLE_COMPLEMENTARY: FIXME * @GTK_ACCESSIBLE_ROLE_COMPOSITE: FIXME * @GTK_ACCESSIBLE_ROLE_CONTENT_INFO: FIXME @@ -1225,47 +1232,51 @@ typedef enum { * @GTK_ACCESSIBLE_ROLE_WINDOW: FIXME * * The accessible role for a #GtkAccessible implementation. + * + * Abstract roles are only used as part of the ontology; application + * developers must not use abstract roles in their code. */ typedef enum { GTK_ACCESSIBLE_ROLE_ALERT, GTK_ACCESSIBLE_ROLE_ALERT_DIALOG, - GTK_ACCESSIBLE_ROLE_APPLICATION, - GTK_ACCESSIBLE_ROLE_ARTICLE, GTK_ACCESSIBLE_ROLE_BANNER, GTK_ACCESSIBLE_ROLE_BUTTON, + GTK_ACCESSIBLE_ROLE_CAPTION, + GTK_ACCESSIBLE_ROLE_CELL, GTK_ACCESSIBLE_ROLE_CHECKBOX, GTK_ACCESSIBLE_ROLE_COLUMN_HEADER, - GTK_ACCESSIBLE_ROLE_COMBOBOX, + GTK_ACCESSIBLE_ROLE_COMBO_BOX, GTK_ACCESSIBLE_ROLE_COMMAND, - GTK_ACCESSIBLE_ROLE_COMPLEMENTARY, GTK_ACCESSIBLE_ROLE_COMPOSITE, - GTK_ACCESSIBLE_ROLE_CONTENT_INFO, - GTK_ACCESSIBLE_ROLE_DEFINITION, GTK_ACCESSIBLE_ROLE_DIALOG, - GTK_ACCESSIBLE_ROLE_DIRECTORY, GTK_ACCESSIBLE_ROLE_DOCUMENT, + GTK_ACCESSIBLE_ROLE_FEED, GTK_ACCESSIBLE_ROLE_FORM, + GTK_ACCESSIBLE_ROLE_GENERIC, GTK_ACCESSIBLE_ROLE_GRID, GTK_ACCESSIBLE_ROLE_GRID_CELL, GTK_ACCESSIBLE_ROLE_GROUP, GTK_ACCESSIBLE_ROLE_HEADING, GTK_ACCESSIBLE_ROLE_IMG, GTK_ACCESSIBLE_ROLE_INPUT, + GTK_ACCESSIBLE_ROLE_LABEL, GTK_ACCESSIBLE_ROLE_LANDMARK, + GTK_ACCESSIBLE_ROLE_LEGEND, GTK_ACCESSIBLE_ROLE_LINK, + GTK_ACCESSIBLE_ROLE_LIST, GTK_ACCESSIBLE_ROLE_LIST_BOX, GTK_ACCESSIBLE_ROLE_LIST_ITEM, GTK_ACCESSIBLE_ROLE_LOG, GTK_ACCESSIBLE_ROLE_MAIN, GTK_ACCESSIBLE_ROLE_MARQUEE, - GTK_ACCESSIBLE_ROLE_MATH, + GTK_ACCESSIBLE_ROLE_METER, GTK_ACCESSIBLE_ROLE_MENU, GTK_ACCESSIBLE_ROLE_MENU_BAR, GTK_ACCESSIBLE_ROLE_MENU_ITEM, GTK_ACCESSIBLE_ROLE_MENU_ITEM_CHECKBOX, GTK_ACCESSIBLE_ROLE_MENU_ITEM_RADIO, GTK_ACCESSIBLE_ROLE_NAVIGATION, - GTK_ACCESSIBLE_ROLE_NOTE, + GTK_ACCESSIBLE_ROLE_NONE, GTK_ACCESSIBLE_ROLE_OPTION, GTK_ACCESSIBLE_ROLE_PRESENTATION, GTK_ACCESSIBLE_ROLE_PROGRESS_BAR, @@ -1278,6 +1289,7 @@ typedef enum { GTK_ACCESSIBLE_ROLE_ROW_HEADER, GTK_ACCESSIBLE_ROLE_SCROLLBAR, GTK_ACCESSIBLE_ROLE_SEARCH, + GTK_ACCESSIBLE_ROLE_SEARCH_BOX, GTK_ACCESSIBLE_ROLE_SECTION, GTK_ACCESSIBLE_ROLE_SECTION_HEAD, GTK_ACCESSIBLE_ROLE_SELECT, @@ -1286,10 +1298,13 @@ typedef enum { GTK_ACCESSIBLE_ROLE_SPIN_BUTTON, GTK_ACCESSIBLE_ROLE_STATUS, GTK_ACCESSIBLE_ROLE_STRUCTURE, + GTK_ACCESSIBLE_ROLE_SWITCH, GTK_ACCESSIBLE_ROLE_TAB, + GTK_ACCESSIBLE_ROLE_TABLE, GTK_ACCESSIBLE_ROLE_TAB_LIST, GTK_ACCESSIBLE_ROLE_TAB_PANEL, GTK_ACCESSIBLE_ROLE_TEXT_BOX, + GTK_ACCESSIBLE_ROLE_TIME, GTK_ACCESSIBLE_ROLE_TIMER, GTK_ACCESSIBLE_ROLE_TOOLBAR, GTK_ACCESSIBLE_ROLE_TOOLTIP, @@ -1310,8 +1325,6 @@ typedef enum { * that is perceivable, but not editable or operable * @GTK_ACCESSIBLE_STATE_EXPANDED: An “expanded” state; corresponds to the * #GtkExpander:expanded property on #GtkExpander - * @GTK_ACCESSIBLE_STATE_GRABBED: A “grabbed” state; set when a widget is - * being grabbed in a drag and drop operation * @GTK_ACCESSIBLE_STATE_HIDDEN: A “hidden” state; corresponds to the * #GtkWidget:visible property on #GtkWidget. You can use this state * explicitly on UI elements that should not be exposed to an assistive @@ -1330,32 +1343,29 @@ typedef enum { GTK_ACCESSIBLE_STATE_CHECKED, GTK_ACCESSIBLE_STATE_DISABLED, GTK_ACCESSIBLE_STATE_EXPANDED, - GTK_ACCESSIBLE_STATE_GRABBED, GTK_ACCESSIBLE_STATE_HIDDEN, GTK_ACCESSIBLE_STATE_INVALID, GTK_ACCESSIBLE_STATE_PRESSED, GTK_ACCESSIBLE_STATE_SELECTED } GtkAccessibleState; +#define GTK_ACCESSIBLE_VALUE_UNDEFINED (-1) + typedef enum { - GTK_ACCESSIBLE_PROPERTY_ACTIVE_DESCENDANT, GTK_ACCESSIBLE_PROPERTY_AUTOCOMPLETE, - GTK_ACCESSIBLE_PROPERTY_CONTROLS, - GTK_ACCESSIBLE_PROPERTY_DESCRIBED_BY, - GTK_ACCESSIBLE_PROPERTY_FLOW_TO, + GTK_ACCESSIBLE_PROPERTY_DESCRIPTION, GTK_ACCESSIBLE_PROPERTY_HAS_POPUP, + GTK_ACCESSIBLE_PROPERTY_KEY_SHORTCUTS, GTK_ACCESSIBLE_PROPERTY_LABEL, - GTK_ACCESSIBLE_PROPERTY_LABELLED_BY, GTK_ACCESSIBLE_PROPERTY_LEVEL, + GTK_ACCESSIBLE_PROPERTY_MODAL, GTK_ACCESSIBLE_PROPERTY_MULTI_LINE, GTK_ACCESSIBLE_PROPERTY_MULTI_SELECTABLE, GTK_ACCESSIBLE_PROPERTY_ORIENTATION, - GTK_ACCESSIBLE_PROPERTY_OWNS, - GTK_ACCESSIBLE_PROPERTY_POS_IN_SET, + GTK_ACCESSIBLE_PROPERTY_PLACEHOLDER, GTK_ACCESSIBLE_PROPERTY_READ_ONLY, - GTK_ACCESSIBLE_PROPERTY_RELEVANT, GTK_ACCESSIBLE_PROPERTY_REQUIRED, - GTK_ACCESSIBLE_PROPERTY_SET_SIZE, + GTK_ACCESSIBLE_PROPERTY_ROLE_DESCRIPTION, GTK_ACCESSIBLE_PROPERTY_SORT, GTK_ACCESSIBLE_PROPERTY_VALUE_MAX, GTK_ACCESSIBLE_PROPERTY_VALUE_MIN, @@ -1363,4 +1373,60 @@ typedef enum { GTK_ACCESSIBLE_PROPERTY_VALUE_TEXT } GtkAccessibleProperty; +typedef enum { + GTK_ACCESSIBLE_RELATION_ACTIVE_DESCENDANT, + GTK_ACCESSIBLE_RELATION_COL_COUNT, + GTK_ACCESSIBLE_RELATION_COL_INDEX, + GTK_ACCESSIBLE_RELATION_COL_INDEX_TEXT, + GTK_ACCESSIBLE_RELATION_COL_SPAN, + GTK_ACCESSIBLE_RELATION_CONTROLS, + GTK_ACCESSIBLE_RELATION_DESCRIBED_BY, + GTK_ACCESSIBLE_RELATION_DETAILS, + GTK_ACCESSIBLE_RELATION_ERROR_MESSAGE, + GTK_ACCESSIBLE_RELATION_FLOW_TO, + GTK_ACCESSIBLE_RELATION_LABELLED_BY, + GTK_ACCESSIBLE_RELATION_OWNS, + GTK_ACCESSIBLE_RELATION_POS_IN_SET, + GTK_ACCESSIBLE_RELATION_ROW_COUNT, + GTK_ACCESSIBLE_RELATION_ROW_INDEX, + GTK_ACCESSIBLE_RELATION_ROW_INDEX_TEXT, + GTK_ACCESSIBLE_RELATION_ROW_SPAN, + GTK_ACCESSIBLE_RELATION_SET_SIZE +} GtkAccessibleRelation; + +typedef enum { /*< prefix=GTK_ACCESSIBLE_CHECKED >*/ + GTK_ACCESSIBLE_CHECKED_FALSE = 0, + GTK_ACCESSIBLE_CHECKED_TRUE = 1, + GTK_ACCESSIBLE_CHECKED_UNDEFINED = -1, + GTK_ACCESSIBLE_CHECKED_MIXED = -2 +} GtkAccessibleCheckedState; + +typedef enum { /*< prefix=GTK_ACCESSIBLE_PRESSED >*/ + GTK_ACCESSIBLE_PRESSED_FALSE = 0, + GTK_ACCESSIBLE_PRESSED_TRUE = 1, + GTK_ACCESSIBLE_PRESSED_UNDEFINED = -1, + GTK_ACCESSIBLE_PRESSED_MIXED = -2 +} GtkAccessiblePressedState; + +typedef enum { /*< prefix=GTK_ACCESSIBLE_INVALID >*/ + GTK_ACCESSIBLE_INVALID_FALSE, + GTK_ACCESSIBLE_INVALID_TRUE, + GTK_ACCESSIBLE_INVALID_GRAMMAR, + GTK_ACCESSIBLE_INVALID_SPELLING, +} GtkAccessibleInvalidState; + +typedef enum { /*< prefix=GTK_ACCESSIBLE_AUTOCOMPLETE >*/ + GTK_ACCESSIBLE_AUTOCOMPLETE_NONE, + GTK_ACCESSIBLE_AUTOCOMPLETE_INLINE, + GTK_ACCESSIBLE_AUTOCOMPLETE_LIST, + GTK_ACCESSIBLE_AUTOCOMPLETE_BOTH +} GtkAccessibleAutocomplete; + +typedef enum { /*< prefix=GTK_ACCESSIBLE_SORT >*/ + GTK_ACCESSIBLE_SORT_NONE, + GTK_ACCESSIBLE_SORT_ASCENDING, + GTK_ACCESSIBLE_SORT_DESCENDING, + GTK_ACCESSIBLE_SORT_OTHER +} GtkAccessibleSort; + #endif /* __GTK_ENUMS_H__ */ -- 2.30.2